<h5>Comunicando el hardware Wiring y Pure Data pd~</h5>
<p>Este tutorial presenta la comunicaci&oacute;n b&aacute;sica entre el hardware Wiring y Pure Data <a href="http://puredata.info">http://puredata.info</a>. El objetivo principal del tutorial ser&aacute; enviar datos a la tarjeta Wiring, la tarjeta Wiring leer&aacute; el dato y encender&aacute; o pagar&aacute; el LED de la tarjeta respectivamente. Se asume que el software Wiring y Pure Data est&aacute; instalado y los ajustes apropiados de Wiring han sido completados. Para m&aacute;s informaci&oacute;n acerca de la instalaci&oacute;n de Wiring revise los <a href="http://wiring.org.co/learning/tutorials/">tutoriales</a> sobre la instalaci&oacute;n y los ajustes del software.</p>
<h5>Paso 1</h5>
<p>Copie y pegue el siguiente c&oacute;digo en el editor Wiring: Verifique que su programa est&eacute; libre de errores de compilaci&oacute;n presionando el bot&oacute;n Compile/Verify en la barra de men&uacute;. Presione el bot&oacute;n Upload en la barra de men&uacute;. En caso de un error de sintaxis el entorno Wiring imprimir&aacute; el mensaje de error de otro modo imprimir&aacute; que la carga se ha completado satisfactoriamente, el proceso de carga activar&aacute; los LEDs Rx/Tx en el hardware Wiring. El nuevo programa empezar&aacute; autom&aacute;ticamente despu&eacute;s de la carga. Use el bot&oacute;n Serial Monitor para ver los datos entrantes desde la tarjeta Wiring, luego cierre el Serial Monitor otra vez.</p>
<pre>
int val;          // variable para recibir datos desde el puerto serial

void setup() 
{
  pinMode(WLED, OUTPUT);  // LED de la tarjeta como OUTPUT
  Serial.begin(9600);       // Inicia la comunicaci&oacute;n serial en 9600bps
}

void loop() {
  if( Serial.available() )         // Si el dato est&aacute; disponible lealo
  {
    val = Serial.read();           // lealo y almacenelo en 'val'
    if( val == 'H' )               // Si 'H' fue recibido
    {
      digitalWrite(WLED, HIGH);  // Encienda el LED
    } 
    else if( val == 'L' ) { 
      digitalWrite(WLED, LOW);   // de otro modo apaguelo
    }
  }
  delay(100);                      // espere 100ms para la siguiente lectura
}
</pre>
<p>&nbsp;</p>
<h5>Paso 2</h5>
<p>El pr&oacute;ximo paso es ajustar las cosas en Pure Data. Inicie Pure Data.</p>
<p>Nota: El objeto &quot;comport&quot; tiene 2 atributos, el primero es el n&uacute;mero del puerto y el segundo es la velocidad del puerto la cual debe coincidir con la velocidad asignada en el programa de Wiring.</p>
<p><img src="imgs/pd-06.png" width="862" height="581" /></p>
<p>&nbsp;</p>
<h5>Paso 3</h5>
<p>Conecte los objetos como se muestra:
<code></code>
<p><img src="imgs/pd-07.png" width="862" height="581" /></p>
<p>&nbsp;</p>
<h5>Paso 4</h5>
<p>Presione el mensaje &quot;devices&quot; para imprimir en la consola los puertos disponibles:</p>
<p><img src="imgs/pd-08.png" width="627" height="520" /></p>
<h5>Paso 5</h5>
<p>Asigne el puerto correcto en la lista, autom&aacute;ticamente el puerto empezar&aacute; enviar datos, hay un toggle para enviar 'H' o 'L' a la tarjeta haciendo que el LED de la tarjeta Wiring parpadee.</p>
<p><img src="imgs/pd-09.png" width="862" height="581" /></p>
<p><img src="imgs/pd-10.png" width="862" height="581" /> </p>
<p>&nbsp;</p>
